package br.org.blacklist.model.politica;

import java.util.ArrayList;
import java.util.List;

import javax.jdo.annotations.IdentityType;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;

import br.org.blacklist.core.model.Entidade;
import br.org.blacklist.model.investigativo.Conquista;
import br.org.blacklist.model.investigativo.TipoIrregularidade;

@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class Politico extends Entidade {

    private static final long serialVersionUID = 1L;

    @Persistent
    private String nome;

    @Persistent
    private Partido partido;

    private TipoIrregularidade irregularidade;

    @Persistent(mappedBy = "politico")
    private List<Conquista> conquistas;

    @Persistent(mappedBy = "politico")
    private List<Mandato> mandatos;

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public TipoIrregularidade getIrregularidade() {
        return irregularidade;
    }

    public void setIrregularidade(TipoIrregularidade irregularidade) {
        this.irregularidade = irregularidade;
    }

    public Partido getPartido() {
        return partido;
    }

    public void setPartido(Partido partido) {
        this.partido = partido;
    }

    public List<Mandato> getMandatos() {
        if (mandatos == null) {
            mandatos = new ArrayList<Mandato>();
        }
        return mandatos;
    }

    public void setMandatos(List<Mandato> mandatos) {
        this.mandatos = mandatos;
    }

    public List<Conquista> getConquistas() {
        if (conquistas == null) {
            conquistas = new ArrayList<Conquista>();
        }
        return conquistas;
    }

    public void setConquistas(List<Conquista> conquistas) {
        this.conquistas = conquistas;
    }

}
